home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 June: Reference Library / Dev.CD Jun 99 RL Disk 1.toast / Technical Documentation / Macintosh Technotes and Q&As / technotes / tn / 1079.cw < prev    next >
Encoding:
Text File  |  1998-04-27  |  40.0 KB  |  497 lines  |  [TEXT/R*ch]

  1. ˜BOBOP´ØdHZHZHZ‹
  2. P¶‘ÿÿHPµøzB®àÿÿPµ‹fl-Zÿÿÿ Tom MaremaaxHHÚ(ÿáÿáùEG(üHHØ(d'`ΔÿÿQP∫Û"†/ÀÌ  ˚è¬P’lRäÿ–
  3. NÜ› Ì˙˚ÿñ™Q    `P  P¶≥4°ÿÿÿÿÿÿÿÿ=W÷DSET°'6*MkÀP¶˘P¶P¶Pµ˛°bP´Ä"Z°bP´Ô+Q π°bQÏ˛2^°°bN†`*Xl°bNÜü*Z!p°bP¶4)U(é°bP´Ü®X  ####^°¬°Õ°Ö°◊°Ø° ®
  4. ®û®ü®‡®fl®ÿ®®®®©,©-°°°F°G°ıăÄÓÄ7Ä‘ÄïÄØÄ    !f    „f    ‰Ÿ    ±f
  5. ¥f πf mf úf;f<ŸffËNH∂NHΔNHŒNH‚NH–f®Ÿ¯Ÿ°ŸÉ¿Ÿ€O¿I\Ÿf⁄Ÿ¶€"f ññ ñíñ8ñMfNflfm‡n‡Δf€f¥\œ\fl\Là«Û¬Û¿à!à!pà"hf#f#Kf$ f$◊Ÿ$Ø´$îf%´\&£f&€f'3Ñ';f'<f(éf)hf)iÜ)|â)πâ)flë*Ì    ˇµ
  6. ¨à¡    5à ^
  7. Ït
  8. àR¬
  9. Ï 
  10. ∏Ó–,
  11. À-
  12. Ï‘
  13. Ïπ
  14. ÏÎ
  15. çà
  16. Ïø
  17. úb
  18. Ïı
  19. Çw ªz
  20. ÇÏ ƒfi
  21. Ëß
  22. Çù
  23. »    
  24. Ç    !
  25.     q
  26. Æ    s
  27.     ‰àï    ±
  28.     Ë
  29. s
  30. 
  31. ’
  32. 
  33. 3
  34. s
  35. ∫
  36. Ω
  37. s
  38. é
  39. ’
  40. û
  41. s π
  42. Â Ï
  43. ’ ä
  44. s z
  45. Â §
  46. s ú
  47. e
  48. ’
  49. v
  50. s; ÕÎ<àïe
  51. Åf
  52. Â≤
  53. sË
  54. Êõ Õ
  55. Ê
  56.  Õ
  57. Ê6 ÕL
  58. Êg
  59. Êl
  60. Ê˘ Õ¨
  61. Êï ß‡
  62. Ê     ÕŒ
  63. Ê® ß∏
  64. Ê¢ ã°
  65. Ê»
  66. -Ö
  67. è◊
  68. ÊQ ÕV
  69. Êk Õœ á¬ Õ– ÕήàïÈ
  70. ÅÉ
  71. Ò+
  72. Ò• Ó∑
  73. ÒŸ
  74. äO
  75. ÒI
  76. ºJ ¯Ÿ
  77. Â⁄àïµ Õû¶
  78. äº
  79. æ◊
  80. ä
  81. ä 
  82. ä" VŒ ù  V  ø8 î] ›u î ›— îƒ ø : øV m øΩ ¢ øÙ ø ø 7 øM    flN
  83. sl
  84. Âmàÿ∂ Δ
  85. s€ V¥ íœ ¯º í1 ¯: íL êM
  86. àBS
  87. ó«àfi≤ å¿
  88. ó!´ 9!Ç
  89. ó!É 9!Í
  90. ó!ç 9!‡
  91. ó"A
  92. «"_
  93. ó"h
  94. Â"ˇ V"«
  95. Â# V#J
  96. Â#w V#∑
  97. Â#À
  98. Â#é V#ÿ
  99. Â$ 
  100. àÚ$
  101. Â$I
  102. ”$d
  103. Â$Ö $◊ÕΔ$Øà·$î
  104. Â$ò V%
  105. Â%“ %´ ¯&£
  106. π&€
  107. àÚ&ª
  108. Â'2
  109. π'3Ój':†';
  110. Â(ç (é
  111. Â)iàü){ ì)|˛)~
  112. ı)π˛)≤
  113. Ô)Í
  114. Ã)õ
  115. Ô)‡
  116. 
  117. ò)fl à±*
  118. 
  119. ö*
  120. z* 
  121. ¬*,
  122. £*.
  123. ô´îPµ´î~P¶´l‹P¶°<}Pµp ’±PµTjQPµX»†Pµl˘ùPµPŒ∏QÏÄNQϰm7N†¨€zPµH¡P¶‰!¿úP¶ì$’P’≥$ÖPµt$◊âPµô'’P¶¬î 
  124.  
  125.  
  126.  
  127.  
  128.  
  129. ›     
  130. T E C H N O T E :
  131. Power Management & Servers:
  132. Auto Restart From Power Failure  
  133. By Vinnie Moscaritolo
  134.    
  135. <http://webstuff.apple.com/~vinnie/> 
  136. Apple Developer Technical Support (DTS) 
  137.  
  138.  
  139.  
  140. Automatically restarting from a power failure is an important feature for any server. Normally, powering up a Macintosh computer requires manual intervention by the user. It is possible, however, to configure the Macintosh hardware, so that the system will power itself up anytime primary A.C. is available.
  141.  
  142. This Note discusses how to communicate with the MacintoshÕs internal power management microcontroller and is important for developers who design software that must run in an environment where little or no human intervention i~s available.
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151. The Process of Turning On Your Macintosh
  152.  
  153. Most server software is designed to run in an environment where youÕre not guaranteed human supervision. A remote server, for example, ought to be able to restart itself after a power failure without any manual interaction. 
  154.  
  155. By default, Macintosh computers are designed to be used in a desktop environment, where the user must power up by manually pressing the power-on key. However, in most cases it is possible to configure the Macintosh firmware, so that the system will power itself up the next time that primary A.C. is available.
  156.  
  157. Most Macintosh computers are equipped‹ with an internal microcontroller that, among other things, manages the Macintosh power providing Soft Power Control. This microcontroller, a custom ASIC designed specifically for Apple, dictates the circumstances under which the Macintosh will initiate a power up cycle. Typical power-on options include:
  158.  
  159. Manual depression of the Power-key on the keyboard.
  160. Manual depression of a momentary contact switch, usually mounted on the rear chassis of the system.
  161. External power up, such as occurs when a NuBus card asserts the PFW signal directly.
  162. The internal power up alarm specified by the Power Manager command SetStartupTimer becomes active.
  163. On Macintosh units that support this feature, there is a Wakeup line connecte}d to the serial ports GPI pin. A typical application of this feature is to power up the Macintosh when it is used as an answering machine or modem server. 
  164. When the system is configured in Server Mode and A.C. power is restored.
  165. This Note only concentrates on the last two options, Server Mode and Wakeup Mode, and how to enable/disable them.
  166.  
  167. Introducing The Cuda Manager
  168. Server Mode is enabled by accessing an internal piece of Macintosh system software known as the Cuda Manager (also known as Egret). The Cuda is the firmware that communicates to the microcontroller responsible for managing the Macintosh power.
  169. Keep in mind that not all Macintosh models have the Cuda Manager or Soft Power Control. Soft Power Control exists only on systems where A.C. voltage is always available to the power supply, and the power supply is controlled by the state of the power fail warning (PFW) signal±. 
  170. On the other hand, Passive Power Control exists in systems where the power supply is turned off or on by a switch directly in line with the primary A.C. voltage to the supply. 
  171. For example, Macintosh Classic and Macintosh II LC employ Passive power control, while the Macintosh II and most Power Macs use Soft Power. 
  172. There are also certain Macintosh models, such as the Color Classic and LC475, LC575 CPUs, that implement a Pseudo Soft Power supply control. In those cases, the keyboard power key can be used to initiate a power up of the system, but the chassis switch is wired directly to the power supply and is not utilized by Cuda. 
  173.  
  174. Determining If Your Mac Supports the Cuda
  175. The Qproper way to determine if a particular Macintosh model supports the Cuda Manager is as follows:
  176. Use the Gestalt function to check for the gestaltHardwareAttr 'hdwr' selector. Then check the response for gestaltHasSoftPowerOff (bit 19). This will indicate if the Macintosh supports Soft Power
  177.  
  178. Use the GetOSTrapAddress to check for the existence of the Cuda Manager dispatch trap known as _EgretDispatch ( $A092 )
  179.  
  180. long unknownTrapAddr;
  181. unknownTrapAddr = GetOSTrapAddress( _Unimplemented );
  182. if( unknownTrapAddr == GetOSTrapAddress( _EgretDispatch ) )
  183.  
  184. In addition to checking the _EgretDispatch trap vector, you also need to ensure that the Cuda Manager software is loaded. There are a few Macintosh ROMs that, even though they implement the Cuda trap, do not have appropriate Cuda hardware. On these machines, invoking the _EgretDispatch trap call †will result in a bus error. 
  185.  
  186. In order to verify that the Cuda software was loaded, you need to check that the internal low memory global at location 0xDE0 does not equal -1.
  187.  
  188. #define    CudaBase    0x00000DE0
  189. typedef Ptr        *CudaGlobalsPtr;
  190.  
  191. Boolean    CheckForCuda( void ) 
  192. {
  193.     long   unknownTrapAddr;
  194.  
  195.     unknownTrapAddr  = GetOSTrapAddress( _Unimplemented )
  196.     if( unknownTrapAddr == GetOSTrapAddress( _EgretDispatch ) )
  197.          return FALSE;
  198.     if( CudaBase == (CudaGlobalsPtr) -1 ) 
  199.         return FALSE;
  200.     return TRUE;
  201. }
  202.  
  203.  
  204.  
  205. Calling the Cuda Manager
  206. Only after you have established the existence of the Cuda Manager should you then pass commands to it. You can do this by issuing a trap dispatch call to the Cuda Manager through the $A092 trap. 
  207. On entry, rùegister A0 must contain a pointer to a parameter block which describes the type of function to be executed by Cuda and how a response to execution of that function is to be returned.
  208. When issuing a Cuda dispatch trap from C, it is necessary to pass a pointer to the Cuda parameter block to the trap using register A0 as a pointer to the parameter block. The following function prototype can be used to interface to the Cuda Manager:
  209. #pragma parameter Cuda( __A0 )
  210. void Cuda( CudaPB* myPB ) = 0xA092; 
  211.  
  212. Cuda Manager Parameter Block Structure 
  213. The Cuda Manager parameter block structure used by all the Cuda Management functions is defined as follows:
  214. #define    pseudoPkt    0x01    /* Cuda Pseudo Packet        */
  215. #define    EnDisFileS    0x13    /* enable/disable file server flag    */
  216. ∏#define    WakeupMode    0x23    /* Enable/Disable WakeUp Mode    */
  217. #define    GetPwrFailTime    0x27    /* read time of last power failure    */
  218. typedef struct {
  219.     unsigned char        pbCmdType;    // Command Type,  always  ÔpseudoPktÕ
  220.     unsigned char        pbCmd;    // Command
  221.     union{                // parameter to pass
  222.         unsigned char    pByte[4];    
  223.         unsigned short    pWord[2];
  224.         unsigned long    pLong;
  225.                 }pbParam;
  226.     unsigned short        pbByteCnt;    // Number of bytes passed in buffer
  227.     unsigned char        *pbBufPtr;    // Pointer to a buffer.
  228.     unsigned char        pbFlags;    // Flags returned by Cuda
  229.     unsigned char        pbSpare;    // reserved
  230.         short        pbResult;    // Result code returned by Cuda
  231.     ProcPtr            pbCompletion;    // Routine to be called on completion
  232. }CudaPB, *CudaPbPtr;
  233.  
  234. The Cuda Manager functions that you need to use are classified as Pseudo Device functions. Typically, parameters of four bytes or less can be passed to or from the Cuda in the parameter block. An error code may also be returned in the event of an unsuccessful completion of a function.
  235.  
  236. 7
  237. Enable / Disable File Server Mode
  238. This call is used to inform Cuda whether the system should be configured as a standard personal computer or as a file server. When configured as a file server, the system will power itself up any time primary A.C. is available. When configured as a standard personal computer, the system must be powered up either by manual intervention of the user or the power up timer. A value of zero passed to pbParam will configure the system as a standard personal computer while a non zero value will configure the system as a file server. 
  239. z
  240.  
  241. short Enable_FS_Mode()
  242. {
  243.     CudaPB            thePB;
  244.  
  245.     if(!CheckForCuda() ) return( kNoCudaError);
  246.     thePB.pbCmdType    = pseudoPkt;
  247.     thePB.pbCmd        = EnDisFiles;
  248.     thePB.pbParam.pByte[0]    = 1;     //enable or disable
  249.     thePB.pbParam.pByte[1]    = 0;
  250.     thePB.pbParam.pByte[2]    = 0;
  251.     thePB.pbParam.pByte[3]    = 0;
  252.     thePB.pbByteCnt    = 0
  253.     thePB.pbBufPtr        = nil;
  254.     thePB.pbResult        = 0;
  255.     thePB.pbCompletion    = nil;¡
  256.  
  257.     Cuda( &thePB );
  258.     return  thePB.pbResult    
  259. }
  260.  
  261. Note: The mode will revert to a standard personal computer if the Shutdown command is issued.
  262.  
  263. Working with a UPS
  264. File Server Mode can be used in conjunction with an external Uninterruptible Power Supply (UPS). But it requires that you programatically shut down the Macintosh before the UPS powers off. Since the File Server Mode state is only valid until the next shutdown, you must ÒforceÓ the shutdown into not reverting  the Cuda into personal computer mode.  
  265. One way to accomplish this is to interact with the shutdown process, as follows: 
  266. Near the end of the shutdown process the ShutDownMgr will check the gestaltHardúwareAttr 'hdwr' selector's response for gestaltHasSoftPowerOff (bit 19). If this machine does not have soft power, it puts up the Safe to Shut Off Your Computer alert. 
  267. As part of your UPS ManagerÕs setup, you can use the ShutDwnInstall procedure to install a custom shutdown proc that will run before the computer powers down. For example:
  268. ErrNo = ShutDwnInstall (myShutdownProc, sdOnPowerOff);
  269. Then in your Shutdown proc, you can use the ReplaceGestalt function to intercept the ShutDownMgrÕs Gestalt lookup, so that it returns a response that has the gestaltHasSoftPowerOff bit reset.
  270. Note: Be sure that you read the "Shutdown Manager" chapter of Inside Macintosh: Processes to understand exactly what happens in the shutdown process and the correct way to shut down a Macintosh computer.
  271. Power Fail Time Clock
  272. The GetPwrFailTime call is used to read the 32 bit integer that represents the last time the system was powered down. The Cuda maintains this in the number of elapsed seconds since January 1, 1904.
  273. Word Get_PwrFail_Time()
  274. {
  275. myCudaPB.pbCmdType    = pseudoPkt;
  276. myCudaPB.pbCmd        = GetPwrFailTime;  //  ($27)
  277. myCudaPB.pbParam.pLong    = Time;
  278. myCudaPB.pbResult    = noErr;
  279. myCudaPB.pbCompletion    = NIL;
  280.  
  281. Cuda( &myCudaPB );
  282. return myCudaPB.pbResult;
  283.  }
  284.  
  285. Note: This function is only available in Cuda Manager 3.0 or greater. The Cuda Manager can be tested by checking the ÔcudaÕ Gestalt selector. 
  286. Summary
  287.  
  288. Although this Technote describes how to configure your Macintosh to automatically restart from a power failure, not all Macintoshes support this feature. This is because there are other ways for Macintosh computers to implement soft power control. For instance, PowerBooks utiltize a completely different system. This is why your code should follow the steps outlined in this Note to check if the Cuda/Egret trap is implemented.
  289. Since accessing the Cuda Manager requires intimate knowledge of low memory globals, it may not work in later Mac OS releases. 
  290.  
  291. Further References
  292. ¥ Inside Macintosh: Devices, Chapter 6, Power Manager Reference
  293. ¥ Technote 1046: Inside Macintosh: Devices, Power Manager Addenda
  294. Acknowledgments
  295. Special thanks to Ray Montagne, Tom Maremaa, and Mark Baumwell.ZÿÿN°DSET≠ÿÿ.HÿÿÿÿÿÿP´˘°√õ@Ú¸°ÿÿ6ÿÿ*õ@ÚDSETØÿÿ.H ÿÿÿÿÿÿP’˘Úb°ÿÿ√ê°ÿÿr°ÿÿ˘    ú°ÿÿ
  296.   ≠°ÿÿ ¨
  297. °ÿÿ0‚°ÿÿc√°ÿÿë°ÿÿs˘°ÿÿ    û
  298.  °ÿÿ ∞ ¨°ÿÿ 0°ÿÿ„¸°ÿÿ6ÿÿ*õ@ÚDSET≠ÿÿ.H@ÿÿÿÿÿÿP’¸õ@Ú%°ÿÿ\ÿÿ*õ@Ú°%°°%Ô°%    †°%
  299. †°% †°% †°%
  300. †DSETT"@≠P’|P´´N†°P´è°%R˘$¥¥≠¥ œ"    à§ z[ˇP[¥ΔWWl≤[¡‰
  301. ∞Pµ∞ 
  302. Technote 1079     ///          Release 1.0       © 1996   Apple Computer, Inc.      ///              ///          Page  of  7
  303. FNTMCUTSDSUM$ Tom MaremaaHDNISTYLø‡ÿÿ@STYLP¶àP“‹PµPµ|P´ÌP¶Pµ@QÏØ§˚¶ÿÿÄ
  304. ÿÿÿÿÿÿÿÿÿÿ
  305. ÿÿÿÿm
  306. ÿÿÿÿ
  307. ÿÿÿÿ
  308. ÿÿÿÿÿÿÿÿÿÿ    ÿÿÿÿ    ÿÿÿÿÿÿ         ÿÿÿÿÿÿ
  309.     ÿÿ"ÿÿÿÿ #    ÿÿ$ÿÿÿÿ b    ÿÿ;ÿÿ X
  310. f    ÿÿ$ÿÿÿÿˇÿÿ
  311. ÿÿÿÿ¨ÿÿ#
  312. ÿÿÿÿ≤ÿÿb*ÿÿÂÿÿf
  313. ÿÿÿÿ 
  314. ÿÿÿÿ8 ÿÿÿÿ
  315. ÿÿ    ÿÿÿÿ
  316. ÿÿÿÿ ÿÿÿÿÿÿ ÿÿÿÿÿÿ
  317. ÿÿ!ÿÿÿÿÿÿ%‹ÿÿÿÿÿÿ0ÿÿÿÿ0ÿÿÿÿ0ÿÿÿÿ0ÿÿÿÿ0ÿÿÿÿ 0    ÿÿÿÿ!0
  318. ÿÿÿÿ"0 ÿÿÿÿ#0 ÿÿÿÿ$ 0
  319. ÿÿÿÿ%!0ÿÿÿÿ&"0ÿÿÿÿ'$0ÿÿÿÿ%(%‹ÿÿÿÿÿÿ)&0%%ÿÿ*'0%%ÿÿ+(0%%ÿÿÿÿ,)0%'ÿÿ-*0%'ÿÿ .+0%'    ÿÿ!/,0%'
  320. ÿÿ"0.0%' ÿÿ#1/0%' ÿÿÿÿ200%&ÿÿÿÿ310%& ÿÿÿÿ420%(!ÿÿ'530%(ÿÿÿÿ%64‹ÿÿÿÿÿÿ76044"ÿÿÿÿ87044#ÿÿÿÿ98044#ÿÿÿÿ::047$ÿÿÿÿ;;047%ÿÿÿÿ<<047%    ÿÿÿÿ==047%
  321. ÿÿÿÿ>?047% ÿÿÿÿ?@047% ÿÿÿÿ@A046&ÿÿÿÿAC046&ÿÿÿÿBD048$ÿÿÿÿCE048%ÿÿÿÿ%DF‹ÿÿÿÿÿÿEG0FF'ÿÿÿÿFH0FFÿÿÿÿGI0FFÿÿÿÿHK0FH(    ÿÿÿÿIL0FHÿÿÿÿJM0FH     ÿÿÿÿKO0FH!    ÿÿÿÿLP0FH"    ÿÿÿÿMQ0FH#    ÿÿÿÿNS0FG)$
  322. ÿÿÿÿOT0FG)%
  323. ÿÿÿÿPU0FI&    ÿÿÿÿQW0FI'ÿÿÿÿ%RX‹ÿÿÿÿ(ÿÿSY0XX*)ÿÿÿÿTZ0XX*ÿÿÿÿU[0XX+ ÿÿÿÿV]0XZ,ÿÿÿÿW^0XZ-ÿÿÿÿX_0XZ.ÿÿÿÿY`0XZ/ÿÿÿÿZa0XZ0ÿÿÿÿ[c0XZ1ÿÿÿÿ\d0XY+6
  324. ÿÿÿÿ]e0XY+7
  325. ÿÿÿÿ^g0X[!4
  326. ÿÿÿÿ_h0X[5
  327. ÿÿÿÿ`i‹ÿÿÿÿ(ÿÿak0ii) ÿÿTbl0ii*ÿÿÿÿcm0ii2ÿÿÿÿdn0il,ÿÿÿÿeo0il3ÿÿÿÿfp0il8ÿÿÿÿgq0il9ÿÿÿÿhr0il:ÿÿÿÿit0ik,6
  328. ÿÿÿÿju0im<ÿÿÿÿkv‹ÿÿÿÿ;ÿÿlw0vv-=ÿÿÿÿmx0vv>ÿÿÿÿny0vx ÿÿÿÿo{0vx!ÿÿÿÿp|0vx"ÿÿÿÿq}0vx#ÿÿÿÿr~0vw.Aÿÿÿÿs0vw.Bÿÿÿÿt•Øÿÿÿÿ    ÿÿu™8•• ÿÿÿÿv≠8•• ÿÿÿÿw∞8••ÿÿÿÿx≥8••ÿÿÿÿy∑8••ÿÿÿÿz∫8••ÿÿÿÿ{Ω8••ÿÿÿÿ|√8••ÿÿÿÿ}≈8••ÿÿÿÿ~…8••ÿÿÿÿ—8••ÿÿÿÿ•‘8••ÿÿÿÿ™⁄Øÿÿÿÿ/!ÿÿ≠∂8⁄⁄5#ÿÿÿÿ∞Œ8⁄⁄7%ÿÿÿÿ≥‚8⁄⁄8'ÿÿÿÿ∑„8⁄⁄?)ÿÿÿÿ∫‰8⁄⁄?,ÿÿÿÿΩ8⁄⁄?-ÿÿÿÿ√ˆ8⁄⁄?.ÿÿÿÿ≈˜8⁄⁄?0ÿÿÿÿ…˘8⁄⁄?2ÿÿÿÿ—˙8⁄⁄?3ÿÿÿÿ ‘˚Øÿÿÿÿ5ÿÿŸ˝8˚˚7ÿÿÿÿ⁄Ö8˚˚8ÿÿÿÿ∂◊8˚˚@ÿÿÿÿΔØ8˚˚AÿÿÿÿŒÙ8˚˚Bÿÿÿÿ‚¥    ÿÿ9ÿÿ‚„œÿÿ¥9ÿÿÿÿ‰§ÿÿ¥:ÿÿÿÿÍ    ÿÿÿÿÿÿˆ‹
  329. ÍDÿÿÿÿ˜¶ÿÿÿÿÿÿ˘“    ÿÿ<ÿÿÿÿ˙¸    ÿÿ?ÿÿÿÿ˚Ì    ÿÿHÿÿÿÿ˝Ñ    ÿÿJÿÿÿÿ˛Ü    ÿÿLÿÿÿÿ    ˇâ    ÿÿOÿÿÿÿıë    ÿÿQÿÿÿÿƒÿÿ Nÿÿÿÿ 5ÿÿO
  330. ÿÿÿÿ¡Èÿÿ“Z=ÿÿÿÿ¢Éÿÿ¸[ÿÿÿÿ£†ÿÿÑ]Dÿÿÿÿ€ìÿÿÜ`Nÿÿÿÿ¥òÿÿâbPÿÿÿÿœöÿÿëeSÿÿ§ÿÿ¸
  331. ÿÿÿÿ¨j
  332. Ñ    ÿÿ§©zÿÿÌ
  333. ÿÿÿÿª˛ÿÿâ
  334. Pÿÿÿÿ«ıÿÿâ Pÿÿÿÿ¬¡ÿÿ
  335. ÿÿÿÿ–¢ÿÿ0ÿÿ®£ÿÿÌ1ÿÿ¢¯πÿÿf[ÿÿÿÿ°ÿÿfÿÿ®
  336. ±sÿÿf1ÿÿÿÿ”µÿÿ#Nÿÿÿÿ“V f6ÿÿÿÿ´Ÿ    ÿÿÿÿÿÿµΔ
  337. Ÿ=ÿÿÿÿ¶ ÿÿ
  338. ÿÿÿÿ·ÅÿÿŸ
  339. 
  340. ÿÿÿÿ¸Ä     ÿÿÿÿ’ÇÿÿÄ
  341. /ÿÿÿÿºª Ä6+ÿÿÿÿ»ËÿÿÄ3/ÿÿÿÿπƒ Ä6ÿÿÿÿ∏Æÿÿf ÿÿÿÿ≤Îÿÿf ÿÿÿÿ¿’ÿÿf@ÿÿÿÿÀ»ÿÿÄ</ÿÿÿÿ ÁN    1ÿÿÿÿ
  342. ÂÊÿÿN
  343. >ÿÿºÃÕ N6+ÿÿÿÿÄß N6EÿÿÿÿÅã N6FÿÿÿÿÆèÿÿN>ÿÿÿÿÇ¿    4ÿÿ©ÈÒÿÿ¿
  344. ÿÿ“ÉÓ ¿6ÿÿÿÿÊ\    ÿÿ(ÿÿÿÿ˯ \6Iÿÿ
  345. Ì€    $ÿÿÈÍäÿÿ€
  346. ÿÿÿÿÎæ €2ÿÿÿÿÏí \6Rÿÿÿÿ‹á N6MÿÿÿÿѺÿÿ\
  347. GÿÿÿÿÒflÿÿfBÿÿÿÿÓñ    ÿÿUÿÿÏÔø ñ6RÿÿÔÕ ñ6RÿÿËÖ ñ6IÿÿÉ◊ù f6ÿÿÿÿØà    ÿÿTÿÿÿÿÙê à6VÿÿÿÿÚóÿÿà
  348. WÿÿÿÿÛ¬ÿÿÌ1ÿÿÛÜôÿÿÌ1ÿÿÿÿ †®    &ÿÿÿÿfi∏ÿÿ®
  349. 9ÿÿÿÿß°    :ÿÿÿÿàÏÿÿ°
  350. Cÿÿá©    ÿÿÿÿâÀÿÿ©
  351. ÿÿÿÿãçÿÿ°Cÿÿàäúÿÿ°
  352. Cÿÿ¨å–
  353. ©    ÿÿÿÿæRÿÿ°>Cÿÿˆçï
  354. ŸDÿÿÿÿèûÿÿŸ 
  355. ÿÿÿÿéî ñ66ÿÿéê› ñ66ÿÿçëü
  356. ÜDÿÿÿÿì±ëCÿÿÿÿ퇠   ÿÿXÿÿëîÿ
  357. ‡Dÿÿÿÿïÿÿ‡Yÿÿÿÿ›-ÿÿN;>ÿÿÿÿñ9 à6ÿÿÿÿò«ÿÿà;Wÿÿÿÿó”ÿÿf;ÿÿÿÿôBÿÿà4Wÿÿÿÿõ´    ÿÿZÿÿîö·
  358. ´Dÿÿÿÿ÷Ôÿÿâ
  359. PÿÿÿÿøÃÿÿâ;PÿÿÿÿùÛ    ÿÿ\ÿÿÿÿúfi
  360. ÛDÿÿÙûå Û6VÿÿÿÿüÚÿÿf4ÿÿ&ÙÿÿHASH√ùû&Ü≈bú¿˚‘
  361. $Ú⁄PüÇ˝∂û˝ª∂ûı÷∂û¢ø∂û«∂ûÃ¥∂ôú¯ˇ˚õ+œ˚jô¿ııõ)€ızô¿˛ àùô◊‘Rôؑ`ÑÛÔ(ÑÛÔ6à"ÔÎá´fiãã%8◊kãµÕáDêäëå &    ˜ú µ
  362. ì ö ú&Î&
  363. á& âøå&&◊&(ñ'(Ö((ÄH(æI& äI&ãJ& fiQ&ßR&†R(ûS'flêS(ÕT(‹x'flπx(Ã∫2 ∫2ƒ˛(Ŭ,¯–≤®,
  364. ±®, °®,
  365. ¿®,Í®,ó®,”®,2∏®.Ú®.ò¯ ü¯
  366. ô±,ÒÅèÆ,·Ó.Ñï2     öb ÷A¬÷A ¶+£Ç, Ì'1Ë/, ´_b
  367. ,ŸQ⁄v∂˝ΔÀŒÚ.’Ú.ÀÛ.»,Ø/,ù<, ʱ0%Ó,uC,¸Qvvw˝x¢.£ÀyÅ. ïåz
  368. {..í.. õ/|T}y~ıÕ,8≠QI∞v4≥˝5∑À5∫å5Ω    
  369. 5√    /5≈    T5…    bûÓ˙    y5—
  370. v( Â
  371. v(›
  372. v(Æ ~&Á*-./0150&ONPOC$U%ø2 3    0<    1=    2>    3?CiJ\K]    (8
  373. G4    5,y·By˝@Ù?AÙ    HCùù+ùB:ù    $9ù    3;‡JE‡>‡ ESÿ>a7ï)m-J.K/L0MFP`H/X0Y1Z2[0_J^&I.Q
  374. "F
  375. #G
  376. $b
  377. %cpqno*r…”sûHj‡/W‡9g‡:h‡1d‡7e‡8f‡DVfl0l'U\*∏* A& „A
  378. 7‰L: Qf &¡f¸eg™h“çmh’ÑÚj–◊alq”ºmÂõÓ˘r§élr”◊as¸‰ª–t“◊Å‘z«áoz¶ÕÄ}Bod}©ÓÖtfA
  379. CHARP“ôÿÿÿÿ ÿÿ ÿÿÿú    ÿÿÿfl ÿÿ ÿÿÿû
  380. ÿÿ•ÿÿÿéÿÿ"ÿ† ÿÿÓÿÿÿÿÿÿ    ÿÿ Õÿÿ&ÿÿ
  381. ÿÿÿÿ
  382. ÿÿ ÿÿàÿÿÿÿ
  383. ÿÿÿÿÿÿ ÿ÷àÿÿ ÿóàÿÿÿú ÿÿ
  384. ÿòÓ'ÿØ
  385. ÿÿÿ÷ àÿÿÿÿ
  386. ÿÿ"
  387. (
  388. '
  389. ÿÿ%
  390. ÿÿ
  391. ÿÿ     
  392.     ÿÿ
  393.     ÿÿ
  394.     ÿÿ.    ÿÿ
  395.     ÿÿ
  396. #
  397. 
  398.     "/    ÿÿ*
  399. 2
  400. '/
  401. ÿÿ        *        
  402. ÿÿ-ÿÿ&    ÿÿ
  403. ÿò
  404. ÿÿÿû
  405. 1ÿú
  406. ÿÿÿÿ
  407. ÿÿ ÿ÷
  408. àÿÿ&ÿÿ ÿÿ  ÿÿ&
  409. ÿÿ ÿÿÿÿ"    àÿÿ&ÿß
  410. ÿÿÿï
  411. ÿÿÿ÷Õÿÿÿÿ
  412. à/&    ÿÿÿë
  413. Eÿÿÿÿ ÿ÷
  414. òÿÿÿÿ    ÿÿ àÿÿàFÿÿÿÿ flÿ• ÕGÿÿÿÿ    ÿö ÕHÿÿÿÿÿflIÿÿÿÿ ÿÿ• ÕJÿÿÿÿÿÿ
  415. Kÿÿÿÿ/ÿÿ
  416. 
  417. Lÿÿÿÿ
  418. ÿÿ
  419. Mÿÿÿÿ
  420. ÿÿ
  421. Pÿÿÿÿ
  422. ÿÿ
  423. ÿÿÿÿÿÿÿÿQÿÿÿÿÿÿ
  424. RÿÿÿÿÿÿSÿÿÿÿÿÿTÿÿÿÿÿÿ    Uÿÿÿÿÿÿ    Vÿÿÿÿÿÿ    Wÿÿÿÿÿÿ    Xÿÿÿÿÿÿ    Yÿÿÿÿÿÿ\ÿÿÿÿÿÿÿÿÿÿÿÿ
  425. ^ÿÿÿÿÿÿÿÿÿÿ_ÿÿÿÿÿÿ     aÿÿÿÿÿÿ
  426. ÿÿÿÿ cÿÿÿÿ'ÿÿ 
  427. ÿÿ'ÿÿ
  428. 
  429. dÿÿÿÿÿÿ
  430. ÿÿÿÿÿÿÿÿ
  431. ÿÿÿÿ
  432. Z7ÿÿHASH.081?45E7≥",3:&;)D() *$    %    )+    *!     
  433. 9[]ZÕ
  434. =Õ à Cà
  435. Dà)>è8:    2
  436.   @
  437. <;ON 1      0Ó    à
  438. 4àà3
  439. B
  440.  `2be"6RC?
  441. CELLPµ ÿÿÿÿÿ•ÿÿÿ"ÿÿÿÿü
  442. ÿÿÿÿø
  443. ÿÿøÿÿÿÿÿÿÿÿÿÿ    ÿÿü
  444. ÿÿü
  445. ÿÿø
  446. ÿÿø
  447. ÿÿü
  448. ÿÿÿÿü
  449. ÿÿü
  450. ÿÿøÿÿøøÿÿÿÿÿÿÿÿx≥
  451. ÿÿØ$ ÿÿx• ÿÿØ 
  452. ÿÿÿÿÿÿÿÿÿÿ    ÿÿø
  453. ÿÿø ÿÿ ÿÿ
  454. ÿÿÿÿøÿÿÿÿûÿÿøÿÿøÿÿÿÿÿÿÿÿ    ÿÿÿÿøÿÿÿ ÿÿÿ
  455. ÿÿü
  456. ÿÿü ÿÿøÿÿøÿÿø    ÿÿÿÿø ÿÿø
  457. ÿÿ@ÿÿÿÿø
  458. ÿÿÿÿÿÿø ÿÿ(Ó
  459. ÿÿ√s Δ@ÿÿHASHÿ    
  460.       
  461. $ %
  462. 67(xŸx∂Ø1Ø3øøø    ø
  463. ø
  464. )ü ü >     
  465. ! " #&'
  466. ./01
  467. 45;*2*èA…‘Bú=ú
  468. -ú,ú<ú3ú8ú9ú:‡    + fiÿÿ
  469. GRPHPµ•ÿÿÿÿÿÿÿÿBÿÿÎÿÿ
  470. ÿÿÎÿÿ
  471. ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ ÿÿÿÿfl≠ÿÿHASH
  472.     Ò
  473. Î   'R]Kl
  474. RULRQ‹4ÿÿÿÿÿÿÿÿ‡@ÿÿ[ÿÿ $ÿÿÿ:B ÿÿ $ÿÿ     $ÿÿÿ@ÿÿÿÿÿzBÿÿ$ÿÿHÿÿÿªB<ÿÿiÿ:B ÿÿlÿÿÿbBÿÿΔÿÿ´ÿÿi≤rB ÿÿØÿÿüÿÿÿÿÿ ÿÿDÿÿ    hÿÿbBN.@Ωµ.Ÿp=
  475. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿbBÿÿ
  476. ‘ÿÿiflzBÿÿ÷Hÿÿ °ÿÿi÷blÿÿÿÿiÿªB<ÿÿ$ÿÿiÿbBÿÿHÿÿ÷BÿÿlÿÿiÿbfÿÿΔÿÿÿRÿÿÿHÿÿ´ÿÿØÿÿüÿÿÿblÿÿ ÿÿ÷    lÿÿDÿÿ    hÿÿiˆbBÿÿÿÿ÷$ÿÿ$ÿÿHÿÿÿBÿÿ÷AÿÿaÿRÿÿiÂBdb•.@Ωµ.Ÿp=
  477. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿÿÂBdÿÿÿ    lÿÿibBb•.@Ωµ.Ÿp=
  478. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿlÿÿΔÿÿ´ÿÿÿAÿÿÿ˚ÿÿÿÿÿÿlÿÿÿbfÿÿibBN.@Ωµ.Ÿp=
  479. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿÿÿÿa˚N.@Ωµ.Ÿp=
  480. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆ[ÿÿÿÿiö…AÿÿizBN.@Ωµ.Ÿp=
  481. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿÿ$ÿÿzBN.@Ωµ.Ÿp=
  482. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿíbÿôNN.@Ωµ.Ÿp=
  483. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿÿbÿôNN.@Ωµ.Ÿp=
  484. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿijBN.@Ωµ.Ÿp=
  485. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿÿ$ÿÿjBN.@Ωµ.Ÿp=
  486. HøŇ2b|è*™ÆS0Å˙6‰˛Ň2‰ÅÿπÆÿÿi÷bBÿÿé6bB].≠.µ.Ä.‡.Ÿ.ÿÿÿ$ÿÿÿbBÿÿiözAÿÿÿzAÿÿiÿzAÿÿÿÿÿÿÿ…AÿÿiözB2[ÿÿHASHΩñ◊√ZÖ´HŸHØπJŸÿ◊ŒP⁄ìÖ€O˘ùÑS˙b‹´Qˇ    ÑNˇr‹´Lÿÿ
  487.